package com.example.leetcode.leetcode;

import java.math.BigDecimal;
import java.util.*;

/**
 * @author zhtjava
 *
 * 题目描述
 * 对于一个网站，很多记录，所以我们不可能一次性将所有记录显示出来，而是需要将记录一页一页的显示，
 * 这样我们只需要点击页面下方的页码，就只显示某一页的记录了。但是当页码很多的时候，将在表格下方显示很多页码，
 * 就不好看了吗，所以我们制定了页码显示规则：
 *
 * 对于总页码N<7，则显示所有页码，反之则最多只显示7个页码（首页页码、尾页页码、当前页K以及当前页前后两页的页码）；
 * 未显示的连续页码用省略号“…”代替。
 * 如：N=94，K=5，则显示页码1 … 3 4 5 6 7 … 94；N=94，K=93，则显示页码1 … 91 92 93 94。
 *
 * 解答要求
 * 时间限制：1000ms, 内存限制：100MB
 * 输入
 * 输入包含两个空格分开的整数N ,K (1≤ K ≤ N ≤ 100)，分别表示总页数和当前页。
 *
 * 输出
 * 输出所显示的页码，用空格分开，未显示的连续页码用省略号”…”统一代替。
 */
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int k = scanner.nextInt();
        if (n< k){
            System.out.println("输出有误");
        }
        if (n<7){
            for (int i = 1; i <= k; i++) {
                System.out.print(i+" ");
            }
            return;
        }
        // n>=7
        if (k <= 3) {
            for (int i = 1; i <= k; i++) {
                System.out.print(i+" ");
            }
        }else{
            System.out.print(1+ " ... ");
            for (int i = k-2; i <=k ; i++) {
                System.out.print(i+" ");
            }
        }

        if (k >=n-2){
            for (int i = k+1; i <= n; i++) {
                System.out.print(i+" ");
            }
        }else{
            for (int i = k+1; i<=k+2 ; i++) {
                System.out.print(i+" ");
            }
            System.out.print("... "+n);
        }
        scanner.close();
    }

}
